[gd_scene load_steps=9 format=2]

[ext_resource path="res://addons/RadMatt.3DFPP/Player.gd" type="Script" id=1]
[ext_resource path="res://addons/RadMatt.3DFPP/Test_Objects/pointer.png" type="Texture" id=2]

[sub_resource type="CapsuleMesh" id=1]

radius = 0.6
mid_height = 2.0
radial_segments = 64
rings = 8

[sub_resource type="SpatialMaterial" id=2]

render_priority = 0
flags_transparent = false
flags_unshaded = false
flags_vertex_lighting = false
flags_no_depth_test = false
flags_use_point_size = false
flags_world_triplanar = false
flags_fixed_size = false
flags_albedo_tex_force_srgb = false
vertex_color_use_as_albedo = false
vertex_color_is_srgb = false
params_diffuse_mode = 0
params_specular_mode = 0
params_blend_mode = 0
params_cull_mode = 0
params_depth_draw_mode = 0
params_line_width = 1.0
params_point_size = 1.0
params_billboard_mode = 0
params_grow = false
params_use_alpha_scissor = false
albedo_color = Color( 1, 1, 1, 1 )
metallic = 0.0
metallic_specular = 0.4
metallic_texture_channel = 0
roughness = 1.0
roughness_texture_channel = 0
emission_enabled = false
normal_enabled = false
rim_enabled = false
clearcoat_enabled = false
anisotropy_enabled = false
ao_enabled = false
depth_enabled = false
subsurf_scatter_enabled = false
transmission_enabled = false
refraction_enabled = false
detail_enabled = false
uv1_scale = Vector3( 1, 1, 1 )
uv1_offset = Vector3( 0, 0, 0 )
uv1_triplanar = false
uv1_triplanar_sharpness = 1.0
uv2_scale = Vector3( 1, 1, 1 )
uv2_offset = Vector3( 0, 0, 0 )
uv2_triplanar = false
uv2_triplanar_sharpness = 1.0
proximity_fade_enable = false
distance_fade_enable = false
_sections_unfolded = [ "Albedo", "Metallic", "Parameters", "Roughness" ]

[sub_resource type="CapsuleShape" id=3]

radius = 0.6
height = 2.0

[sub_resource type="GDScript" id=4]

script/source = "extends Label

# class member variables go here, for example:
# var a = 2
# var b = \"textvar\"

func _ready():
	# Called every time the node is added to the scene.
	# Initialization here
	pass

func _process(delta):
	set_text(str(Engine.get_frames_per_second()))
"

[sub_resource type="Animation" id=5]

length = 0.5
loop = false
step = 0.1
tracks/0/type = "value"
tracks/0/path = NodePath("Capsule:mesh:mid_height")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ 2.0, 0.1 ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("Collision:shape:height")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ 2.0, 0.1 ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("Capsule:translation")
tracks/2/interp = 2
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector3( 0, 2, 0 ), Vector3( 0, 1, 0 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("Collision:translation")
tracks/3/interp = 2
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector3( 0, 2, 0 ), Vector3( 0, 1, 0 ) ]
}
tracks/4/type = "value"
tracks/4/path = NodePath("Yaw/Camera:translation")
tracks/4/interp = 2
tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector3( 0, 3, 0 ), Vector3( 0, 1.5, 0 ) ]
}
tracks/5/type = "value"
tracks/5/path = NodePath("ceiling_check:translation")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector3( 0, 3.5, 1.42109e-14 ), Vector3( 0, 1.5, 1.42109e-14 ) ]
}

[sub_resource type="GDScript" id=6]

script/source = "extends ProgressBar

# class member variables go here, for example:
# var a = 2
# var b = \"textvar\"

func _ready():
	set_max(250)

func _process(delta):
	set_value(get_parent().throw_power)
"

[node name="Player" type="KinematicBody" groups=[
"player",
]]

input_ray_pickable = true
input_capture_on_drag = false
collision_layer = 1
collision_mask = 1
axis_lock_linear_x = false
axis_lock_linear_y = false
axis_lock_linear_z = false
axis_lock_angular_x = false
axis_lock_angular_y = false
axis_lock_angular_z = false
collision/safe_margin = 0.001
script = ExtResource( 1 )
_sections_unfolded = [ "Collision", "collision" ]

[node name="Capsule" type="MeshInstance" parent="." index="0"]

transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 2, 0 )
layers = 1
material_override = null
cast_shadow = 1
extra_cull_margin = 0.0
use_in_baked_light = false
lod_min_distance = 0.0
lod_min_hysteresis = 0.0
lod_max_distance = 0.0
lod_max_hysteresis = 0.0
mesh = SubResource( 1 )
skeleton = NodePath("..")
material/0 = SubResource( 2 )
_sections_unfolded = [ "Transform", "material" ]

[node name="ceiling_check" type="RayCast" parent="." index="1"]

transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 3.5, 1.42109e-14 )
enabled = true
exclude_parent = true
cast_to = Vector3( 0, 0, 4 )
collision_mask = 1
_sections_unfolded = [ "Transform", "Visibility" ]

[node name="Collision" type="CollisionShape" parent="." index="2"]

transform = Transform( 1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 2, 0 )
shape = SubResource( 3 )
disabled = false
_sections_unfolded = [ "Transform" ]

[node name="floor_check" type="RayCast" parent="." index="3"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0 )
enabled = true
exclude_parent = true
cast_to = Vector3( 0, -0.5, 0 )
collision_mask = 1
_sections_unfolded = [ "Transform" ]

[node name="Yaw" type="Spatial" parent="." index="4"]

[node name="Camera" type="Camera" parent="Yaw" index="0"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 3, 0 )
keep_aspect = 1
cull_mask = 1048575
environment = null
h_offset = 0.0
v_offset = 0.0
doppler_tracking = 0
projection = 0
current = true
fov = 70.0
size = 1.0
near = 0.05
far = 100.0
_sections_unfolded = [ "Transform" ]

[node name="Item_Holder" type="Spatial" parent="Yaw/Camera" index="0"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.584962, -0.714723, -1.12066 )
_sections_unfolded = [ "Transform" ]

[node name="look_at" type="Position3D" parent="Yaw/Camera" index="1"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.3193 )

[node name="pickup_pos" type="Position3D" parent="Yaw/Camera" index="2"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, -2.10606 )

[node name="InteractionRay" type="RayCast" parent="Yaw/Camera" index="3"]

enabled = true
exclude_parent = true
cast_to = Vector3( 0, 0, -5 )
collision_mask = 1

[node name="stair_check" type="RayCast" parent="Yaw" index="1"]

transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.02655, -0.624282 )
enabled = true
exclude_parent = true
cast_to = Vector3( 0, -0.5, 0 )
collision_mask = 1
_sections_unfolded = [ "Transform" ]

[node name="Pointer" type="Sprite" parent="." index="5"]

modulate = Color( 1, 1, 1, 0.392157 )
position = Vector2( 800, 450 )
scale = Vector2( 0.1, 0.1 )
texture = ExtResource( 2 )
_sections_unfolded = [ "Transform", "Visibility" ]

[node name="FPS" type="Label" parent="." index="6"]

anchor_left = 0.0
anchor_top = 0.0
anchor_right = 0.0
anchor_bottom = 0.0
margin_left = 1292.0
margin_top = 831.0
margin_right = 1365.0
margin_bottom = 845.0
rect_scale = Vector2( 4, 4 )
rect_pivot_offset = Vector2( 0, 0 )
rect_clip_content = false
mouse_filter = 2
mouse_default_cursor_shape = 0
size_flags_horizontal = 1
size_flags_vertical = 4
align = 2
valign = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
script = SubResource( 4 )
_sections_unfolded = [ "Rect" ]

[node name="crouching" type="AnimationPlayer" parent="." index="7"]

root_node = NodePath("..")
autoplay = ""
playback_process_mode = 1
playback_default_blend_time = 0.0
playback_speed = 1.0
anims/crouch = SubResource( 5 )
blend_times = [  ]

[node name="ProgressBar" type="ProgressBar" parent="." index="8"]

anchor_left = 0.0
anchor_top = 0.0
anchor_right = 0.0
anchor_bottom = 0.0
margin_left = 26.0
margin_top = 22.0
margin_right = 378.0
margin_bottom = 51.0
rect_pivot_offset = Vector2( 0, 0 )
rect_clip_content = false
mouse_filter = 0
mouse_default_cursor_shape = 0
size_flags_horizontal = 1
size_flags_vertical = 0
min_value = 0.0
max_value = 250.0
step = 2.0
page = 0.0
value = 0.0
exp_edit = false
rounded = false
percent_visible = true
script = SubResource( 6 )

[node name="message" type="Label" parent="." index="9"]

anchor_left = 0.0
anchor_top = 0.0
anchor_right = 0.0
anchor_bottom = 0.0
margin_left = 716.0
margin_top = 168.0
margin_right = 807.0
margin_bottom = 182.0
rect_scale = Vector2( 2, 2 )
rect_pivot_offset = Vector2( 0, 0 )
rect_clip_content = false
mouse_filter = 2
mouse_default_cursor_shape = 0
size_flags_horizontal = 1
size_flags_vertical = 4
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1
_sections_unfolded = [ "Rect" ]

[node name="Timer" type="Timer" parent="message" index="0"]

process_mode = 1
wait_time = 1.0
one_shot = false
autostart = false

[node name="interaction_text" type="Label" parent="." index="10"]

anchor_left = 0.0
anchor_top = 0.0
anchor_right = 0.0
anchor_bottom = 0.0
margin_top = 459.0
margin_right = 1597.0
margin_bottom = 473.0
rect_pivot_offset = Vector2( 0, 0 )
rect_clip_content = false
mouse_filter = 2
mouse_default_cursor_shape = 0
size_flags_horizontal = 1
size_flags_vertical = 4
text = "interaction"
align = 1
valign = 1
percent_visible = 1.0
lines_skipped = 0
max_lines_visible = -1

[connection signal="animation_finished" from="crouching" to="." method="_on_crouching_animation_finished"]


